<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"            
      xmlns:jb="http://java.sun.com/jsf/composite/componentes"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">

        <ui:define name="contenido">          
            <h:form onsubmit="return checkSubmit();"  id="frmPrincipal">    
                <p:panel id="pnlPrincipal" header="#{i18n['panel.titulo.ubigeo']}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid id="pgFormFilter" columns="10" rendered="false">

                        <h:outputLabel styleClass="label" value="#{i18n['ubigeo.empresa']}"/>                    
                        <p:selectOneMenu value="#{ubigeoMBean.empresaId}"  converter="empresaConvert"                              
                                         style="#{applicationMBean.estiloObligatorio}" disabled="#{ubigeoMBean.tipoDeUsuario}" >
                            <f:selectItems value="#{ubigeoMBean.listaEmpresa}" var="empresaDto" itemLabel="#{empresaDto.descripcion}" itemValue="#{empresaDto}" />                        
                            <p:ajax update="frmPrincipal" listener="#{ubigeoMBean.filtroEmpresa}" /> 
                        </p:selectOneMenu >

                        <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.buscar.filtro.tip']}" accesskey="#{applicationMBean.keyBuscar}"
                                         value="#{i18n['general.button.buscar.filtro']}" ajax="false" 
                                         style="#{applicationMBean.estilosBtnBuscar}"  
                                         actionListener="#{ubigeoMBean.filtroEmpresa}">
                            <p:ajax  update="idPngTree treeSingle" />
                        </p:commandButton> 
                    </h:panelGrid>

                    <p:contextMenu for="treeSingle" style="width: 200px;">  
                        <p:menuitem value="#{i18n['general.button.nuevo']}" actionListener="#{ubigeoMBean.nuevaUbigeo}" icon="ui-icon-plusthick"  style="#{applicationMBean.estiloMenu}" 
                                    oncomplete="dlgUbigeo.show()"
                                    update=":idDlgUbigeo"/>  
                        <p:menuitem value="#{i18n['general.button.editar']}" oncomplete="dlgUbigeo.show()"
                                    actionListener="#{ubigeoMBean.editarUbigeo}" update=":idDlgUbigeo"
                                    icon="ui-icon-pencil" style="#{applicationMBean.estiloMenu}"/> 
                        <p:menuitem value="#{i18n['ubigeo.boton.gestion.feriados']}" 
                                    action="#{ubigeoMBean.gestionFeriados}" ajax="false"
                                    icon="ui-icon-contact" style="#{applicationMBean.estiloMenu}"/>   
                    </p:contextMenu>  
                    
                    <h:panelGrid id="idPngTree">
                        <p:treeTable id="treeSingle" value="#{ubigeoMBean.ubigeos}" var="dtoX" 
                                     selectionMode="single"   styleClass="estiloPanel" 
                                     selection="#{ubigeoMBean.selectedUbigeo}">                          
                            <p:column style="#{dtoX.matiz}">   
                                <f:facet name="header">  
                                    #{i18n['general.label.id']}  
                                </f:facet>  
                                <h:outputText value="#{dtoX.id}"/>  
                            </p:column>  
                            <p:column style="#{dtoX.matiz}">  
                                <f:facet name="header">  
                                    #{i18n['ubigeo.descripcion']}  
                                </f:facet>  
                                <h:outputText value="#{dtoX.descripcion}" />  
                            </p:column>
                             <p:column style="#{dtoX.matiz}">  
                            <f:facet name="header">  
                                #{i18n['ubigeo.codigo.postal']}  
                            </f:facet>  
                            <h:outputText value="#{dtoX.codigoPostal}" />  
                        </p:column>
                            <p:column style="#{dtoX.matiz} #{applicationMBean.estiloMontosDerecha}">  
                            <f:facet name="header">  
                                #{i18n['ubigeo.impuesto.ventas']}  
                            </f:facet>  
                            <h:outputText value="#{dtoX.impuestoVentas}">
                               <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                            </h:outputText>  
                        </p:column>
                        <p:column style="#{dtoX.matiz} #{applicationMBean.estiloMontosDerecha}">  
                            <f:facet name="header">  
                                #{i18n['ubigeo.retencion']}  
                            </f:facet>  
                            <h:outputText value="#{dtoX.retencion}">
                                <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                            </h:outputText>  
                        </p:column>
                        </p:treeTable>
                    </h:panelGrid>
                </p:panel>  
            </h:form>
            <p:dialog id="idDlgUbigeo" rendered="true" modal="true"  header="#{i18n['ubigeo.panel']}" widgetVar="dlgUbigeo" style="#{applicationMBean.estiloTitulo}">                                   
                <ui:include src="/pages/core/ubigeo/ubigeo.xhtml" /> 
            </p:dialog>
            <p:dialog id="idDlgBitacoraEntidad" header="#{i18n['bitacora.titulo']}" widgetVar="dlgBitacoraEntidad" resizable="false"  
                      width="900" height="200" modal="true">                        
                <ui:include src="/pages/bitacora/bitacoras.xhtml" /> 
            </p:dialog>
        </ui:define>
    </ui:composition>
</html>
